import { ElMessage } from "element-plus";

type MessageType = "success" | "info" | "warning" | "error";

type MessageOptions = {
  /**
   * 消息的类型
   */
  type: MessageType;
  /**
   * 要显示的消息内容
   */
  message: string;
  /**
   * 消息持续展示的时间（毫秒），默认值为3000ms
   * 如果设置成0，消息将一直显示直至手动关闭
   */
  duration?: number;
  /**
   * 是否显示关闭按钮，默认为false
   */
  showClose?: boolean;
  /**
   * 消息是否居中显示，默认为false
   */
  center?: boolean;
};

/**
 * @Description: 消息提示hooks
 * @Author: Zhanghan
 * @Date: 2024-12-05 17:29:05
 */
export function useMessage() {
  function message(options: MessageOptions) {
    ElMessage({
      type: options.type ?? "info",
      message: options.message ?? "默认内容",
      showClose: options.showClose ?? true,
      center: options.center ?? false,
      duration: options.duration ?? 1000,
    });
  }
  return message;
}
